﻿var flaNameBind = 0;		//昵称被占用
var flaNameFormat = 0;		//昵称格式错误
var flaNameSysError = 0;	//系统错误
var flaMailBind = 0;		//邮件被占用
var flaMailSysError = 0;	//系统错误
var flaMailFormat = 0;		//邮件格式错误
var flaMailYahoo = 0;		//邮件为雅虎邮件
var flaMobileBind = 0;		//手机账号被绑定
var flaMobileSysError = 0;	//查询手机号绑定时系统错误
var flaMobileMul = 0;		//手机账号重复
var flaMobileMulSysError = 0;//查询手机账号重复时系统错误
var flaMobileFormat = 0;	//手机账号格式错误
var flaAccountFormat = 0;
var time = 60;
var timeFlow;
var base_url='';

function viewServiceClause() {
    //window.open(base_url + '/common/serviceClause.jsp', 'serviceClause', 'height=500, width=600, toolbar=no, menubar=no, scrollbars=yes, resizable=yes,location=yes, status=no');
}

$(function () {
    $("img.validate2,#changImg").click(function () {
        $("img.validate2").attr('src', base_url + "/test/rand.action?d=" + new Date().getTime());
    });
    //用于页面刷新后的自动校验
    if ('' != $.trim($("#s_email_mobile").val())) {
        check_email_mobile();
    }
    var s_cnname = $.trim($("#s_cnname").val());
    if ('' != s_cnname) {
        check_validata(s_cnname, 's_cnname');
        on_check(s_cnname, 's_cnname');
    }
});

function on_check(value, id) {
    if ($.trim(value) == '') {
        return;
    }
    var url;
    var time = new Date().getTime();
    if (id == 's_email') {
        var s_email = value.replace(/\s/g, "");
        url = base_url + '/Login/checkUser?email=' + s_email + '&times=' + time;
    }
    if (id == 's_cnname') {
        var s_cnname = value.replace(/\s/g, "");
        url = base_url + '/Login/checkUser?s_cnname=' + encodeURI(encodeURI(s_cnname)) + '&times=' + time;
    }
    //添加手机账号唯一性验证,以及手机账号是否被绑定
    if (id == 's_mobile_account_multi') {
        var s_mobile_account = value.replace(/\s/g, "");
        url = '/Login/checkUser?s_mobile_account=' + s_mobile_account + '&s_mobile_account_flag=' + 'multi' + '&times=' + time;
    }
    $.post(url, null, function (data) {
        if (data == "0") {
            flaNameBind = 0;
            flaNameSysError = 0;
        } else if (data == "1") {
            flaNameBind++;
            $("#s_cnname_user").text("昵称已经被占用");
        } else if (data == "-1") {
            flaNameSysError++;
            $("#s_cnname_user").text("系统内部出现错误");
        }
        if (data == "2") {
            flaMailBind++;
            $("#emailmessage").text("邮箱已经被占用，使用此账户登录");
            $("#s_email_mobile_message").html("邮箱已经被占用，使用此账户 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        } else if (data == "-2") {
            flaMailSysError++;
            $("#emailmessage").text("系统内部出现错误");
            $("#s_email_mobile_message").text("系统内部出现错误");
        } else if (data == "3") {
            flaMailBind = 0;
            flaMailSysError = 0;
        }
        if ("6" == data) {
            flaMobileMul++;
            $("#s_email_mobile_message").html("手机号已经被占用，使用此账户 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        } else if ("-6" == data) {
            flaMobileMulSysError++;
            $("#s_email_mobile_message").text("系统内部出现错误");
        } else if ("7" == data) {
            flaMobileMul = 0;
            flaMobileMulSysError = 0;
        }
        if ("8" == data) {
            flaMobileBind++;
            $("#s_email_mobile_message").html("此手机号已经被绑定，不能注册。<br />请用绑定此号码的账户名 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        } else if ("-8" == data) {
            flaMobileSysError++;
            $("#s_email_mobile_message").text("系统内部出现错误");
        } else if ("9" == data) {
            flaMobileBind = 0;
            flaMobileSysError = 0;
        }
    });
}

//当鼠标再次定位到那个按钮时候，取消后面的DIV显示
function on_focus(id) {
    if (id == 's_cnname') {
        $("#s_cnname_user").empty();
    }
    if (id == 's_email') {
        $("#emailmessage").empty();
    }
    if (id == 's_email_mobile') {
        $("#s_email_mobile_message").empty();
    }
    if (id == 's_user_pwd') {
        $("#s_user_pwd1").empty();
        $("#s_user_pwd").empty();
    }
    if (id == 's_user_pwd2') {
        $("#s_use2").empty();
        $("#s_user_pwd2").empty();
    }
    if (id == 'C_TYPE_SOURCE') {
        $("#type_source").empty();
    }
    if (id == 'srand') {
        $("#s_nick_srand").empty();
    }
    if (id == 'C_ROLE_ID') {
        $("#role_id").empty();
    }
    if (id == 'mobile') {
        $("#mobilemessage").empty();
    }
}
// 验证文本框中不能输入汉字
function check_validata(value, id) {
    // 增加手机数字格式长度验证 -add by charlie
    var mobilereg = /^1[3|4|5|8][0-9]{9}$/;
    //修复bug，用户张小姐网易邮箱地址中间带“-”，无法录入系统，因此无法用邮箱注册，但因为使用很长时间了，不想为此去新开一个邮箱地址；
    //手机：18910769353
    //邮箱：maggie-zmj@163.com
    //Modifier: Michael   Date: 8-27
    var myreg = /^([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+@([a-zA-Z0-9]+[_|\-|\.]?)*[a-zA-Z0-9]+\.[a-zA-Z]{2,3}$/;
    var cnNameReg = /^([a-zA-Z0-9]|[-_]|[\u4E00-\u9FA5]){2,20}$/;
    if (!cnNameReg.test(value) && id == 's_cnname') {
        $("#s_cnname_user").text("请输入2-20个字母数字中文或-_字符");
        flaNameFormat++;
        return false;
    } else if (cnNameReg.test(value) && id == 's_cnname') {
        flaNameFormat = 0;
    }
    if (!myreg.test(value) && id == 's_email') {
        $("#emailmessage").text("邮箱格式不正确");
        $("#s_email_mobile_message").text("邮箱格式不正确");
        flaMailFormat++;
        return false;
    } else if (myreg.test(value) && id == 's_email') {
        flaMailFormat = 0;
    }
    // 增加手机数字格式长度验证-add by charlie
    if (value != '' && id == 'mobile') {
        flaMobileFormat = 0;
        if (mobilereg.test(value) == false && id == 'mobile') {
            $("#mobilemessage").text("手机号码格式不对");
            $("#s_email_mobile_message").text("手机号码格式不对");
            flaMobileFormat++;
            return false;
        }
    }
    return true;
}

//判断用户输入的数据是为邮箱还是手机号,并且校验
function check_email_mobile() {
    flaAccountFormat = 0;
    flaMobileFormat = 0;
    flaMailFormat = 0;
    flaMailYahoo = 0;
    flaMailBind = 0;
    flaMailSysError = 0;
    flaMobileBind = 0;
    flaMobileSysError = 0;
    flaMobileMul = 0;
    flaMobileMulSysError = 0;
    var s_email_mobile = $.trim($('#s_email_mobile').val());
    var emailReg = /.*@.*/;		//匹配出现@的字符
    var mobileReg = /^\d*$/;	//匹配任意数字
    if ('' == s_email_mobile) {
        $("#s_email_mobile_message").text("请输入邮箱或手机号");
    } else if (emailReg.test(s_email_mobile)) {	//输入的为邮箱
        if (false == check_validata(s_email_mobile, 's_email')) {
            $("#s_email_mobile_message").text("邮箱格式不正确");
        } else if (s_email_mobile.toLowerCase().indexOf('@yahoo.com.cn') != -1 || s_email_mobile.toLowerCase().indexOf('@yahoo.cn') != -1) {
            $("#s_email_mobile_message").html('中国雅虎邮箱已经停止服务&nbsp;&nbsp;<a href="http://migration.cn.yahoo.com/explain.php" target="_blank">官方公告</a>');
            flaMailYahoo++;
        } else {
            //异步检查邮箱是否重复
            on_check(s_email_mobile, 's_email');
        }
    } else if (mobileReg.test(s_email_mobile)) { //输入的为手机号
        if (false == check_validata(s_email_mobile, 'mobile')) {
            $("#s_email_mobile_message").text("手机号码格式不对");
        } else {
            //异步检查手机号是否重复
            on_check(s_email_mobile, 's_mobile_account_multi');
        }
    } else {//输入的为其他字符
        $("#s_email_mobile_message").text("请输入邮箱或手机号");
        flaAccountFormat++;
    }
}

function validate_mobile(s_mobile_account) {
    //验证手机号格式、是否被绑定、是否重复
    if ('' == s_mobile_account) {
        $("#s_nick_srand").text("请输入手机号");
        return false;
    } else if (flaMobileFormat > 0) {
        $("#s_nick_srand").text("手机号码格式不对");
        return false;
    } else if (flaMobileBind > 0) {
        $("#s_nick_srand").text("手机号被绑定");
        return false;
    } else if (flaMobileSysError > 0) {
        $("#s_nick_srand").text("系统内部出现错误");
        return false;
    } else if (flaMobileMul > 0) {
        $("#s_nick_srand").text("手机号重复");
        return false;
    } else if (flaMobileMulSysError > 0) {
        $("#s_nick_srand").text("系统内部出现错误");
        return false;
    } else {
        return true;
    }
}

function on_submitCheck() {
    var s_email_mobile = $.trim($("#s_email_mobile").val());
    var s_user_pwd = $.trim($("#s_user_pwd").val());
    var s_user_pwd2 = $.trim($("#s_user_pwd2").val());
    var s_nick_srand = $.trim($("#srand").val());
    var s_cnname = $.trim($("#s_cnname").val());
    var i = 0;
    //校验昵称
    if (s_cnname == "") {
        $("#s_cnname_user").text("昵称不能为空");
        i = i + 1;
    } else if (flaNameFormat > 0) {
        $("#s_cnname_user").text("昵称格式不对");
        i = i + 1;
    } else if (flaNameBind > 0 && s_cnname != "") {
        $("#s_cnname_user").text("昵称已经被占用");
        i = i + 1;
    } else if (flaNameSysError > 0 && s_cnname != "") {
        $("#s_cnname_user").text("系统内部出现错误");
        i = i + 1;
    }
    //校验密码
    if (s_user_pwd == "") {
        $("#s_user_pwd1").text("密码应该是6-16位之间");
        i = i + 1;
    } else {
        if (check_password('1') == false) {
            i = i + 1;
        }
    }
    if (s_user_pwd2 == "") {
        $("#s_use2").text("密码应该是6-16位之间");
        i = i + 1;
    } else {
        if (check_password('2') == false) {
            i = i + 1;
        }
    }
    //校验验证码
    if (s_nick_srand == "") {
        $("#s_nick_srand").text("验证码不能为空");
        i = i + 1;
    }
    //校验账号
    if ("" == s_email_mobile) {
        $("#s_email_mobile_message").text("请输入邮箱或手机号");
        i = i + 1;
    } else if (0 < flaAccountFormat) {
        $("#s_email_mobile_message").text("请输入邮箱或手机号");
        i = i + 1;
    } else if (0 < flaMailBind) {
        $("#s_email_mobile_message").html("邮箱已经被占用，使用此账户 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        i = i + 1;
    } else if (0 < flaMailFormat) {
        $("#s_email_mobile_message").text("邮箱格式不正确，请重新填写");
        i = i + 1;
    } else if (0 < flaMailSysError) {
        $("#s_email_mobile_message").text("系统内部出现错误");
        i = i + 1;
    } else if (0 < flaMobileMul) {
        $("#s_email_mobile_message").html("手机号已经被占用，使用此账户 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        i = i + 1;
    } else if (0 < flaMobileBind) {
        $("#s_email_mobile_message").html("此手机号已经被绑定，不能注册。<br />请用绑定此号码的账户名 <a href='" + base_url + "/pages/auth/login.jsp' class='pl5 c5c'>登录</a>");
        i = i + 1;
    } else if (0 < flaMobileSysError) {
        $("#s_email_mobile_message").text("系统内部出现错误");
        i = i + 1;
    } else if (0 < flaMobileFormat) {
        $("#s_email_mobile_message").text("手机号格式不正确，请重新填写");
        i = i + 1;
    } else if (0 < flaMailYahoo) {
        $("#s_email_mobile_message").html('中国雅虎邮箱已经停止服务&nbsp;&nbsp;<a href="http://migration.cn.yahoo.com/explain.php" target="_blank">官方公告</a>');
        $("#emailmessage").html('中国雅虎邮箱已经停止服务&nbsp;&nbsp;<a href="http://migration.cn.yahoo.com/explain.php" target="_blank">官方公告</a>');
        i = i + 1;
    }
    //对应老页面
    if (flaMailBind > 0 && s_email != "") {
        $("#emailmessage").text("邮箱已经被占用");
        i = i + 1;
    } else if (flaMailSysError > 0 && s_email != "") {
        $("#emailmessage").text("系统内部出现错误");
        i = i + 1;
    }
    //表示未做勾选
    if (!$("#checkflag").prop("checked")) {
        alert("请确认是否同意该条款");
        i = i + 1;
    }
    if (i == 0) {
        $('form').attr('action', "/Login/GetRegisterInfo").submit();
    }

}

function check_password(type) {
    var s_user_pwd = $.trim($("#s_user_pwd").val());
    var s_user_pwd2 = $.trim($("#s_user_pwd2").val());
    if (type == '1') {
        if (s_user_pwd.length < 6 || s_user_pwd.length > 16) {
            $("#s_user_pwd1").text("密码应该是6-16位之间");
            return false;
        }
    }
    if (type == '2') {
        if (s_user_pwd2.length < 6 || s_user_pwd2.length > 16) {
            $("#s_use2").text("密码应该是6-16位之间");
            return false;
        }
        if (s_user_pwd != s_user_pwd2) {
            $("#s_use2").text("您两次输入的密码不一致");
            return false;
        }
    }
    return true;
}